package org.example.medicalstaff.service;

import net.sf.jsqlparser.expression.DateTimeLiteralExpression;
import org.example.his.common.api.CommonResponse;
import org.example.medicalstaff.entity.CheckApply;
import org.example.medicalstaff.entity.MedicalRecord;
import org.example.medicalstaff.entity.Register;
import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpSession;
import java.util.List;

public interface PatientClientService {

    /**
     * API1 通过查询Register表获取患者信息
     */
    @GetMapping("/patient/all/{user_id}")
    CommonResponse<List<Register>> getAllPatient( int userID );

    /**
     * API2 提交患者病历首页信息
     */
    CommonResponse<String> submit_info(
            String CaseNumber,
            int RegistID,
            String Readme,
            String Present,
            String PresentTreat,
            String History,
            String Allergy,
            String Physique,
            String Proposal,
            String Careful
    );

    /**
     * API3 重新加载患者病历首页信息
     */
    CommonResponse<List<MedicalRecord>> refresh(
            String CaseNumber,
            int RegistID
    );

    /**
     * API4 提交初步诊断结果
     */
    CommonResponse<String> submit_diagnosis(
            int MedicalID,
            int RegistID,
            int DiseaseID,
            int DiagnoseType
    );

    /**
     * API5 门诊医生查看项目检查结果
     */
    CommonResponse<CheckApply> look_check_pro(
            int RegistID,
            int MedicalID,
            int ItemID
    );

    /**
     * API6 提交最终确诊结果
     */
    CommonResponse<String> final_diagnosis(
            int MedicalID,
            int RegistID,
            String Diagnosis,
            String Handling,
            int DiagnoseCate
    );

    /**
     * API7 结束门诊——诊毕
     */
    CommonResponse<String> end_service(
            int MedicalID,
            int RegistID
    );
}
